# 2. 实现一个简易的计算器，效果如下：
# 运行后提示让用户输入一个数字
#    1. 提示输入操作符（+ - * /）
#    2. 再次提示输入一个数字
#    3. 打印计算结果
#    4. 在不退出程序的前提下，可以允许用户继续输入新一组数据计算

# 判断输入是否为数字
def is_number(n):
    try:
        float(n)
        return True
    except ValueError:
        return False


while True:
    firstNumber = input("请输入第一个数字('q' 退出): ")
    if firstNumber == 'q':
        print("bye~~")
        break
    if is_number(firstNumber):
        operator = input("请输入需要进行的操作（可选操作符：+、-、*、/）：")
        if operator in ['+', '-', '*', '/']:
            secondNumber = input("请输入第二个数字：")
            if is_number(secondNumber):
                if operator == '+':
                    print("计算结果为：{}\n".format(float(firstNumber) + float(secondNumber)))
                    continue
                elif operator == '-':
                    print("计算结果为：{}\n".format(float(firstNumber) - float(secondNumber)))
                    continue
                elif operator == '*':
                    print("计算结果为：{}\n".format(float(firstNumber) * float(secondNumber)))
                    continue
                elif operator == '/' and secondNumber == '0':
                    print("ZeroDivisionError，请重新输入~~\n")
                    continue
                else:
                    print("计算结果为：{}\n".format(float(firstNumber) / float(secondNumber)))
                    continue
            else:
                print("{} 不是数字，请重新输入~~\n".format(secondNumber))
        else:
            print("请正确输入一个操作符（可选操作符：+、-、*、/）")
            continue
    else:
        print("{} 不是数字，请重新输入~~\n".format(firstNumber))
